package com.lineage.server.model;

import com.lineage.server.datatables.lock.SpawnBossReading;
import java.util.HashMap;
import java.util.Iterator;

public class L1AttackList {
  protected static final HashMap<Integer, Integer> SKU1 = new HashMap<>();
  
  protected static final HashMap<Integer, Integer> SKU2 = new HashMap<>();
  
  protected static final HashMap<Integer, Integer> SKNPC = new HashMap<>();
  
  protected static final HashMap<Integer, Integer> PLNPC = new HashMap<>();
  
  protected static final HashMap<Integer, Integer> SKD1 = new HashMap<>();
  
  protected static final HashMap<Integer, Integer> SKD2 = new HashMap<>();
  
  public static final HashMap<Integer, Integer> SKD3 = new HashMap<>();
  
  public static final HashMap<Integer, Integer> SKM0 = new HashMap<>();
  
  protected static final HashMap<Integer, Integer> STRH = new HashMap<>();
  
  protected static final HashMap<Integer, Integer> DEXH = new HashMap<>();
  
  protected static final HashMap<Integer, Integer> STRD = new HashMap<>();
  
  protected static final HashMap<Integer, Integer> DEXD = new HashMap<>();
  
  protected static final HashMap<Integer, Integer[]> DNNPC = (HashMap)new HashMap<>();
  
  protected static final HashMap<Integer, Boolean> NZONE = new HashMap<>();
  
  public static final HashMap<Integer, Integer> INTH = new HashMap<>();
  
  protected static final HashMap<Integer, Integer> INTD = new HashMap<>();
  
  public static final HashMap<Integer, Integer> INTMPCONSUME = new HashMap<>();
  
  public static void load() {
    Iterator<Integer> iterator = SpawnBossReading.get().bossIds().iterator();
    while (iterator.hasNext()) {
      Integer bossid = iterator.next();
      Integer[] ids = { 
          new Integer(66), new Integer(50), new Integer(33), new Integer(157), 
          new Integer(103), new Integer(40), new Integer(20), new Integer(64), new Integer(56), 
          new Integer(27), 
          new Integer(183), new Integer(188), new Integer(193), new Integer(202), 
          new Integer(212), new Integer(217), new Integer(80) };
      if (DNNPC.get(bossid) == null)
        DNNPC.put(bossid, ids); 
    } 
    NZONE.put(new Integer(27), Boolean.valueOf(false));
    NZONE.put(new Integer(29), Boolean.valueOf(false));
    NZONE.put(new Integer(33), Boolean.valueOf(false));
    NZONE.put(new Integer(39), Boolean.valueOf(false));
    NZONE.put(new Integer(40), Boolean.valueOf(false));
    NZONE.put(new Integer(47), Boolean.valueOf(false));
    NZONE.put(new Integer(56), Boolean.valueOf(false));
    NZONE.put(new Integer(44), Boolean.valueOf(false));
    NZONE.put(new Integer(71), Boolean.valueOf(false));
    NZONE.put(new Integer(76), Boolean.valueOf(false));
    NZONE.put(new Integer(152), Boolean.valueOf(false));
    NZONE.put(new Integer(153), Boolean.valueOf(false));
    NZONE.put(new Integer(157), Boolean.valueOf(false));
    NZONE.put(new Integer(161), Boolean.valueOf(false));
    NZONE.put(new Integer(167), Boolean.valueOf(false));
    NZONE.put(new Integer(174), Boolean.valueOf(false));
    NZONE.put(new Integer(87), Boolean.valueOf(false));
    NZONE.put(new Integer(66), Boolean.valueOf(false));
    NZONE.put(new Integer(50), Boolean.valueOf(false));
    NZONE.put(new Integer(80), Boolean.valueOf(false));
    NZONE.put(new Integer(194), Boolean.valueOf(false));
    NZONE.put(new Integer(173), Boolean.valueOf(false));
    NZONE.put(new Integer(133), Boolean.valueOf(false));
    NZONE.put(new Integer(145), Boolean.valueOf(false));
    NZONE.put(new Integer(64), Boolean.valueOf(false));
    NZONE.put(new Integer(193), Boolean.valueOf(false));
    NZONE.put(new Integer(188), Boolean.valueOf(false));
    NZONE.put(new Integer(183), Boolean.valueOf(false));
    NZONE.put(new Integer(208), Boolean.valueOf(false));
    NZONE.put(new Integer(67), Boolean.valueOf(false));
    SKD1.put(new Integer(3016), new Integer(1));
    SKD1.put(new Integer(3024), new Integer(1));
    SKD1.put(new Integer(3016), new Integer(1));
    SKD1.put(new Integer(3016), new Integer(1));
    SKD1.put(new Integer(3048), new Integer(2));
    SKD2.put(new Integer(3019), new Integer(1));
    SKD2.put(new Integer(3027), new Integer(1));
    SKD2.put(new Integer(3032), new Integer(1));
    SKD2.put(new Integer(3040), new Integer(1));
    SKD2.put(new Integer(3049), new Integer(2));
    SKD3.put(new Integer(3008), new Integer(-5));
    SKD3.put(new Integer(3009), new Integer(-5));
    SKD3.put(new Integer(3010), new Integer(-5));
    SKD3.put(new Integer(3011), new Integer(-5));
    SKD3.put(new Integer(3012), new Integer(-5));
    SKD3.put(new Integer(3013), new Integer(-5));
    SKD3.put(new Integer(3014), new Integer(-5));
    SKD3.put(new Integer(3024), new Integer(-5));
    SKD3.put(new Integer(3025), new Integer(-5));
    SKD3.put(new Integer(3026), new Integer(-5));
    SKD3.put(new Integer(3027), new Integer(-5));
    SKD3.put(new Integer(3028), new Integer(-5));
    SKD3.put(new Integer(3029), new Integer(-5));
    SKD3.put(new Integer(3030), new Integer(-5));
    SKD3.put(new Integer(3040), new Integer(-5));
    SKD3.put(new Integer(3041), new Integer(-5));
    SKD3.put(new Integer(3042), new Integer(-5));
    SKD3.put(new Integer(3043), new Integer(-5));
    SKD3.put(new Integer(3044), new Integer(-5));
    SKD3.put(new Integer(3045), new Integer(-5));
    SKD3.put(new Integer(3046), new Integer(-5));
    SKD3.put(new Integer(3015), new Integer(-5));
    SKD3.put(new Integer(3031), new Integer(-5));
    SKD3.put(new Integer(3047), new Integer(-5));
    SKD3.put(new Integer(3048), new Integer(-2));
    SKD3.put(new Integer(3049), new Integer(-2));
    SKD3.put(new Integer(3050), new Integer(-2));
    SKD3.put(new Integer(3051), new Integer(-2));
    SKD3.put(new Integer(181), new Integer(-5));
    SKD3.put(new Integer(211), new Integer(-2));
    SKD3.put(new Integer(68), new Integer(68));
    SKM0.put(new Integer(78), new Integer(0));
    SKM0.put(new Integer(50), new Integer(0));
    SKM0.put(new Integer(80), new Integer(0));
    SKM0.put(new Integer(157), new Integer(0));
    SKU1.put(new Integer(3016), new Integer(1));
    SKU1.put(new Integer(3024), new Integer(1));
    SKU1.put(new Integer(3034), new Integer(2));
    SKU1.put(new Integer(3042), new Integer(2));
    SKU1.put(new Integer(3048), new Integer(1));
    SKU2.put(new Integer(3019), new Integer(1));
    SKU2.put(new Integer(3027), new Integer(1));
    SKU2.put(new Integer(3032), new Integer(1));
    SKU2.put(new Integer(3040), new Integer(1));
    SKU2.put(new Integer(3049), new Integer(1));
    SKNPC.put(new Integer(45912), new Integer(1013));
    SKNPC.put(new Integer(45913), new Integer(1013));
    SKNPC.put(new Integer(45914), new Integer(1013));
    SKNPC.put(new Integer(45915), new Integer(1013));
    SKNPC.put(new Integer(45916), new Integer(1014));
    SKNPC.put(new Integer(45941), new Integer(1015));
    SKNPC.put(new Integer(45752), new Integer(4005));
    SKNPC.put(new Integer(45753), new Integer(4005));
    SKNPC.put(new Integer(45675), new Integer(4006));
    SKNPC.put(new Integer(81082), new Integer(4006));
    SKNPC.put(new Integer(45625), new Integer(4006));
    SKNPC.put(new Integer(45674), new Integer(4006));
    SKNPC.put(new Integer(45685), new Integer(4006));
    SKNPC.put(new Integer(87000), new Integer(4007));
    SKNPC.put(new Integer(45020), new Integer(4008));
    SKNPC.put(new Integer(99019), new Integer(1027));
    PLNPC.put(new Integer(46069), new Integer(6035));
    PLNPC.put(new Integer(46070), new Integer(6035));
    PLNPC.put(new Integer(46071), new Integer(6035));
    PLNPC.put(new Integer(46072), new Integer(6035));
    PLNPC.put(new Integer(46073), new Integer(6035));
    PLNPC.put(new Integer(46074), new Integer(6035));
    PLNPC.put(new Integer(46075), new Integer(6035));
    PLNPC.put(new Integer(46076), new Integer(6035));
    PLNPC.put(new Integer(46077), new Integer(6035));
    PLNPC.put(new Integer(46078), new Integer(6035));
    PLNPC.put(new Integer(46079), new Integer(6035));
    PLNPC.put(new Integer(46080), new Integer(6035));
    PLNPC.put(new Integer(46081), new Integer(6035));
    PLNPC.put(new Integer(46082), new Integer(6035));
    PLNPC.put(new Integer(46083), new Integer(6035));
    PLNPC.put(new Integer(46084), new Integer(6035));
    PLNPC.put(new Integer(46085), new Integer(6035));
    PLNPC.put(new Integer(46086), new Integer(6035));
    PLNPC.put(new Integer(46087), new Integer(6035));
    PLNPC.put(new Integer(46088), new Integer(6035));
    PLNPC.put(new Integer(46089), new Integer(6035));
    PLNPC.put(new Integer(46090), new Integer(6035));
    PLNPC.put(new Integer(46091), new Integer(6035));
    PLNPC.put(new Integer(46092), new Integer(6034));
    PLNPC.put(new Integer(46093), new Integer(6034));
    PLNPC.put(new Integer(46094), new Integer(6034));
    PLNPC.put(new Integer(46095), new Integer(6034));
    PLNPC.put(new Integer(46096), new Integer(6034));
    PLNPC.put(new Integer(46097), new Integer(6034));
    PLNPC.put(new Integer(46098), new Integer(6034));
    PLNPC.put(new Integer(46099), new Integer(6034));
    PLNPC.put(new Integer(46100), new Integer(6034));
    PLNPC.put(new Integer(46100), new Integer(6034));
    PLNPC.put(new Integer(46101), new Integer(6034));
    PLNPC.put(new Integer(46102), new Integer(6034));
    PLNPC.put(new Integer(46103), new Integer(6034));
    PLNPC.put(new Integer(46104), new Integer(6034));
    PLNPC.put(new Integer(46105), new Integer(6034));
    PLNPC.put(new Integer(46106), new Integer(6034));
    int str = 0;
    while (str <= 7) {
      STRH.put(new Integer(str), new Integer(4));
      str++;
    } 
    int strH = 4;
    int str2 = 8;
    while (str2 <= 254) {
      if (str2 % 3 == 0 || str2 % 3 == 2)
        strH++; 
      STRH.put(new Integer(str2), new Integer(strH));
      str2++;
    } 
    int dex = 0;
    while (dex <= 7) {
      DEXH.put(new Integer(dex), new Integer(-3));
      dex++;
    } 
    int dexH = -3;
    int dex2 = 8;
    while (dex2 <= 254) {
      dexH++;
      DEXH.put(new Integer(dex2), new Integer(dexH));
      dex2++;
    } 
    int dmgStr = -6;
    int str3 = 0;
    while (str3 <= 22) {
      if (str3 % 2 == 1)
        dmgStr++; 
      STRD.put(new Integer(str3), new Integer(dmgStr));
      str3++;
    } 
    str3 = 23;
    while (str3 <= 28) {
      if (str3 % 3 == 2)
        dmgStr++; 
      STRD.put(new Integer(str3), new Integer(dmgStr));
      str3++;
    } 
    str3 = 29;
    while (str3 <= 32) {
      if (str3 % 2 == 1)
        dmgStr++; 
      STRD.put(new Integer(str3), new Integer(dmgStr));
      str3++;
    } 
    str3 = 33;
    while (str3 <= 34) {
      dmgStr++;
      STRD.put(new Integer(str3), new Integer(dmgStr));
      str3++;
    } 
    str3 = 35;
    while (str3 <= 254) {
      if (str3 % 4 == 1)
        dmgStr++; 
      STRD.put(new Integer(str3), new Integer(dmgStr));
      str3++;
    } 
    int dex3 = 0;
    while (dex3 <= 8) {
      DEXD.put(new Integer(dex3), new Integer(2));
      dex3++;
    } 
    int dmgDex = 2;
    int dex4 = 9;
    while (dex4 <= 254) {
      if (dex4 % 3 == 0)
        dmgDex++; 
      DEXD.put(new Integer(dex4), new Integer(dmgDex));
      dex4++;
    } 
    int intel = 0;
    while (intel <= 22) {
      INTH.put(new Integer(intel), new Integer(0));
      intel++;
    } 
    int intH = 0;
    int intel2 = 23;
    while (intel2 <= 254) {
      if (intel2 % 3 == 2)
        intH++; 
      INTH.put(new Integer(intel2), new Integer(intH));
      intel2++;
    } 
    intel2 = 0;
    while (intel2 <= 14) {
      INTD.put(new Integer(intel2), new Integer(0));
      intel2++;
    } 
    int dmgint = 0;
    int intel3 = 15;
    while (intel3 <= 254) {
      if (intel3 % 5 == 0)
        dmgint++; 
      INTD.put(new Integer(intel3), new Integer(dmgint));
      intel3++;
    } 
    intel3 = 0;
    while (intel3 <= 7) {
      INTMPCONSUME.put(new Integer(intel3), new Integer(0));
      intel3++;
    } 
    intel3 = 0;
    while (intel3 <= 7) {
      INTMPCONSUME.put(new Integer(intel3), new Integer(0));
      intel3++;
    } 
    int minusmpconsume = 5;
    int intel4 = 8;
    while (intel4 <= 254) {
      if (intel4 % 3 == 0 || intel4 % 3 == 2)
        minusmpconsume++; 
      if (minusmpconsume > 30)
        minusmpconsume = 30; 
      INTMPCONSUME.put(new Integer(intel4), new Integer(minusmpconsume));
      intel4++;
    } 
  }
}
